﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq;
using WEBRM.Dominio.Servicos;
using WEBRM.Repositorio.Repositorios;

namespace WEBRM.WebUI
{
    public partial class frmRegistrarAtendimento : System.Web.UI.Page
    {
        private StatusServico statusServico;
        private CategoriaProdutoServico categoriaServico;
        private ProdutoServico produtoServico;


        protected void Page_Load(object sender, EventArgs e)
        {
            AdicionarTitulosPagina();
            if (!IsPostBack)
            {
                PopularCategoria();
                PopularStauts();
                lblData.Text = DateTime.Now.ToString("dd/MM/yyyy hh:mm");
            }
        }

        private void AdicionarTitulosPagina()
        {
            ((Site)Master).Titulo = "Registrar atendimento";
            ((Site)Master).Descricao = "Digite as informações para ";
        }


        private void PopularStauts()
        {
            statusServico = new StatusServico(new StatusRepositorio());
            ddlStatus.DataSource = statusServico.Repositorio.ObterTodos();
            ddlStatus.DataTextField = "Nome";
            ddlStatus.DataValueField = "Id";
            ddlStatus.DataBind();

            ddlStatus.Items.Insert(0, new ListItem("Selecione","0"));
        }

        private void PopularCategoria()
        {
            categoriaServico = new CategoriaProdutoServico(new CategoriaProdutoRepositorio());
            ddlCategoria.DataSource = categoriaServico.Repositorio.ObterTodos();
            ddlCategoria.DataTextField = "Nome";
            ddlCategoria.DataValueField = "Id";
            ddlCategoria.DataBind();


            ddlCategoria.Items.Insert(0, new ListItem("Selecione", "0"));
        }

        private void PopularProdutos(string idCategoria)
        {
            ddlProduto.Items.Clear();

            produtoServico = new ProdutoServico(new ProdutoRepositorio());
            ddlProduto.DataSource = produtoServico.Repositorio.ObterTodos().Where(x => x.Categoria.Id == long.Parse(idCategoria)).ToList();
            ddlProduto.DataTextField = "Nome";
            ddlProduto.DataValueField = "Id";
            ddlProduto.DataBind();

            ddlProduto.Items.Insert(0, new ListItem("Selecione", "0"));
        }

        protected void ddlStatus_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        protected void ddlCategoria_SelectedIndexChanged(object sender, EventArgs e)
        {
            PopularProdutos(ddlCategoria.SelectedValue);
        }

    }
}
